NetWare User Name

Otázka od: delphi@spst.cz

9. 6. 2004 9:32

Dobry den.

Napsal jsem si program, ktery provadi udrzbu disku na licitaci pripojeneho
do site NetWare. V tomto programu zjistuji, kdo je prihlasen do site. Kdyz
je to jako klasicka aplikace vse funguje perfektne - zobrazi se uzivatelske
jmeno i kontext.
Ale kdyz to same prepisu jako sluzbu, tak misto uzivatelskeho jmena dostanu
PUBLIC.
Netusite co mam udelat, aby to fungovalo tak jak ma.

Windows XP, Delphi 7

Kod pro zjisteni NW UserName

function NWUserName : String;
var
  hContext: NWDSContextHandle;
  tptr:pointer;
  Context : string;
  newcontext, AmI:array [0..255] of Char;
  Name : string;
  Start : Byte;
begin
  hContext:=NWDSCreateContext;
  Context :=DS_ROOT_NAME;;
  strpcopy(newcontext,Context);
  tptr:=@newcontext;
  NWDSSetContext(hContext,DCK_NAME_CONTEXT,tptr) ;
  NWDSWhoAmI(hContext, @AmI);
  NWDSFreeContext(hContext);
  Name := AmI;
  Delete(Name,1,Pos('=',Name));
  Start := Pos('.',Name);
  Delete(Name,Start+1,Pos('=',Name)-Start);
  NWUserName := Name;
end;

Predem vsem dekuji Jirka


Odpovedá: Karel Rys

9. 6. 2004 11:01

delphi@spst.cz dne 9 Jun 2004 v 10:06:

> Napsal jsem si program, ktery provadi udrzbu disku na licitaci
> pripojeneho do site NetWare. V tomto programu zjistuji, kdo je
> prihlasen do site. Kdyz je to jako klasicka aplikace vse funguje
> perfektne - zobrazi se uzivatelske jmeno i kontext. Ale kdyz to same
> prepisu jako sluzbu, tak misto uzivatelskeho jmena dostanu PUBLIC.
> Netusite co mam udelat, aby to fungovalo tak jak ma.

Ahoj,

obavam se, ze sluzba nema sve prihlaseni do Novellu - ostatne muze vesele bezet
i v dobe, kdy
nikdo na stanici prihlaseny neni.

Nestacilo by v login skriptu nastavit systemovou promennou a nebo jmeno
uzivatele, ktery se prave
prihlasuje, zapsat do nejakeho souboru, odkud by si ho sluzba precetla, apod.?

Jinak mohl bych Te poprosit o informaci, jake unity pouzivas na zjisteni toho
prihlaseneho
uzivatele?

Karel Rys


Odpovedá: delphi@spst.cz

9. 6. 2004 11:07


Ahoj

>Jinak mohl bych Te poprosit o informaci, jake unity pouzivas na zjisteni
>toho prihlaseneho uzivatele?

Pouzivam DelphiLib primo od Novellu. Jinak Kdyz si nainstalujes w32sdk
taktez od Novellu ziskas kompletni dokumentaci. Jsou tam popsane veskere
fce. V pripade NWUserName pouzivam NetWin32.

Jirka